
package com.insigma.business.qrcode.soldier._consumer;




import com.insigma.business.qrcode.common.template.BasePagingResponse;
import com.insigma.business.qrcode.common.vo.BaseDeleteRequest;
import com.insigma.business.qrcode.common.vo.BaseResponse;
import com.insigma.business.qrcode.soldier.dto.*;
import com.insigma.business.qrcode.soldier.request.CommonRepresentationRecordInsertRequest;
import com.insigma.business.qrcode.soldier.request.CommonRepresentationRecordSearchRequest;
import com.insigma.business.qrcode.soldier.request.PlacementInfoSearchRequest;
import com.insigma.business.qrcode.soldier.service.PlacementSoldierInfoSearchRequest;

import java.util.List;


public interface PlacementSoldierInfoConsumer {


    
    BasePagingResponse<List<PlacementSoldierInfoDTO>> searchPlacementSoldierInfo(final PlacementSoldierInfoSearchRequest placementSoldierInfoSearchRequest);

    
    BaseResponse<PlacementSoldierInfoDTO> signInByIdCardOrMobile(PlacementSoldierInfoInsertRequest request);

    
    BaseResponse<PlacementSoldierInfoDTO> getPlacementSoldierInfo(String idCardNo);

    
    BaseResponse<PlacementSoldierInfoDTO> getFilteredSoldierDetail(String soldierId);

    
    BaseResponse<PlacementAspirationResultDetailDTO> getPlacementSoldierAspirationResult(String soldierId);

    
    BaseResponse<PlacementSoldierInfoDTO> getPlacementProcess(String soldierId);

    
    BaseResponse<String> insertPlacementSoldierInfo(final PlacementSoldierInfoInsertRequest placementSoldierInfoInsertRequest);

    
    BaseResponse<String> importPlacementSoldiers(SimpleApiRequest request);

    
    BaseResponse<Integer> updatePlacementSoldierInfo(final PlacementSoldierInfoUpdateRequest placementSoldierInfoUpdateRequest);

    
    BaseResponse<Integer> representArchiveScore(final CommonRepresentationRecordInsertRequest request);

    
    BaseResponse<CommonRepresentationRecordDTO> getMyRepresent(String soldierId);

    


    
    BaseResponse<Integer> confirmArchiveScore(final PlacementSoldierInfoUpdateRequest placementSoldierInfoUpdateRequest);

    
    BaseResponse<Integer> deletePlacementSoldierInfo(final BaseDeleteRequest deleteRequest);

    BaseResponse<String> importExamScore(SimpleApiRequest request);

    BaseResponse<Integer> updateSoldierInfo(PlacementSoldierInfoUpdateRequest request);

    BasePagingResponse<List<PlacementSoldierInfoDTO>> searchPlacementSoldierShortInfo(PlacementSoldierInfoSearchRequest searchRequest);

    BaseResponse<Integer> updateSoldierInfoBySoldier(PlacementSoldierInfoUpdateRequest request);

    BaseResponse<Integer> publishAllSoldier(PlacementSoldierInfoUpdateRequest request);

    BaseResponse<Integer> geneOfflineBatch(PlacementSoldierInfoUpdateRequest request);

    BasePagingResponse<List<CommonRepresentationRecordDTO>> listMyRepresent(CommonRepresentationRecordSearchRequest request);

    BaseResponse<PlacementSoldierInfoDTO> signInByPw(String idCardNo, String password, String soldierUserId);

    BaseResponse<Integer> changePw(PlacementSoldierInfoUpdateRequest placementSoldierInfoUpdateRequest);

    BasePagingResponse<List<PlacementSoldierInfoDTO>> searchThoughTrain(PlacementSoldierInfoSearchRequest searchRequest);

    BaseResponse<ExcelResultBO> exportSoliderInfo(PlacementSoldierInfoSearchRequest searchRequest);

    BaseResponse<String> importPlacementArchiveScore(SimpleApiRequest request);

    BaseResponse<Integer> confirmBaseInfo(PlacementSoldierInfoUpdateRequest request);

    
    BaseResponse<PlacementBatchDTO> viewDeadline(final PlacementInfoSearchRequest placementInfoInsertRequest);

    BaseResponse<BinaryResultBO> getPlacementSoldierInfoOfPdf(String idCardNo);

    
    BaseResponse<BinaryResultBO> batchExportPdfByIdCardNo(PlacementSoldierInfoSearchRequest request);
}
